package com.tms.operation.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 提货单对象 tms_pickup
 * 
 * @author ruoyi
 * @date 2024-10-25
 */
public class TmsPickup extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 提货单号 */
    @Excel(name = "提货单号")
    private String pickupOrderNumber;

    /** 运单号 */
    @Excel(name = "运单号")
    private String waybillNumber;

    /** 订单号 */
    @Excel(name = "订单号")
    private String orderNumber;

    /** 客户 */
    @Excel(name = "客户")
    private String customer;

    /** 始发地 */
    @Excel(name = "始发地")
    private String departure;

    /** 目的地 */
    @Excel(name = "目的地")
    private String destination;

    /** 提货状态 */
    @Excel(name = "提货状态")
    private String pickupStatus;

    /** 发货地址 */
    @Excel(name = "发货地址")
    private String shippingAddress;

    /** 收货地址 */
    @Excel(name = "收货地址")
    private String receivingAddress;

    /** 司机 */
    @Excel(name = "司机")
    private String driver;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String licensePlate;

    /** 手机号码 */
    @Excel(name = "手机号码")
    private String phoneNumber;

    /** 提货数量 */
    @Excel(name = "提货数量")
    private Long pickupQuantity;

    /** 提货体积（m³) */
    @Excel(name = "提货体积", readConverterExp = "提货体积（m³)")
    private BigDecimal pickupVolume;

    /** 提货重量（kg） */
    @Excel(name = "提货重量", readConverterExp = "k=g")
    private BigDecimal pickupWeight;

    /** 提货运费合计（元） */
    @Excel(name = "提货运费合计", readConverterExp = "元=")
    private BigDecimal pickupFreightTotal;

    /** 提货开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "提货开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pickupStartTime;

    /** 提货完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "提货完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pickupCompleteTime;

    /** 计划发车时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划发车时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date plannedDepartureTime;

    /** 实际发车时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际发车时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date actualDepartureTime;

    /** 计划到达时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划到达时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date plannedArrivalTime;

    /** 实际到达时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际到达时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date actualArrivalTime;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createdBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdTime;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setPickupOrderNumber(String pickupOrderNumber) 
    {
        this.pickupOrderNumber = pickupOrderNumber;
    }

    public String getPickupOrderNumber() 
    {
        return pickupOrderNumber;
    }
    public void setWaybillNumber(String waybillNumber) 
    {
        this.waybillNumber = waybillNumber;
    }

    public String getWaybillNumber() 
    {
        return waybillNumber;
    }
    public void setOrderNumber(String orderNumber) 
    {
        this.orderNumber = orderNumber;
    }

    public String getOrderNumber() 
    {
        return orderNumber;
    }
    public void setCustomer(String customer) 
    {
        this.customer = customer;
    }

    public String getCustomer() 
    {
        return customer;
    }
    public void setDeparture(String departure) 
    {
        this.departure = departure;
    }

    public String getDeparture() 
    {
        return departure;
    }
    public void setDestination(String destination) 
    {
        this.destination = destination;
    }

    public String getDestination() 
    {
        return destination;
    }
    public void setPickupStatus(String pickupStatus) 
    {
        this.pickupStatus = pickupStatus;
    }

    public String getPickupStatus() 
    {
        return pickupStatus;
    }
    public void setShippingAddress(String shippingAddress) 
    {
        this.shippingAddress = shippingAddress;
    }

    public String getShippingAddress() 
    {
        return shippingAddress;
    }
    public void setReceivingAddress(String receivingAddress) 
    {
        this.receivingAddress = receivingAddress;
    }

    public String getReceivingAddress() 
    {
        return receivingAddress;
    }
    public void setDriver(String driver) 
    {
        this.driver = driver;
    }

    public String getDriver() 
    {
        return driver;
    }
    public void setLicensePlate(String licensePlate) 
    {
        this.licensePlate = licensePlate;
    }

    public String getLicensePlate() 
    {
        return licensePlate;
    }
    public void setPhoneNumber(String phoneNumber) 
    {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber() 
    {
        return phoneNumber;
    }
    public void setPickupQuantity(Long pickupQuantity) 
    {
        this.pickupQuantity = pickupQuantity;
    }

    public Long getPickupQuantity() 
    {
        return pickupQuantity;
    }
    public void setPickupVolume(BigDecimal pickupVolume) 
    {
        this.pickupVolume = pickupVolume;
    }

    public BigDecimal getPickupVolume() 
    {
        return pickupVolume;
    }
    public void setPickupWeight(BigDecimal pickupWeight) 
    {
        this.pickupWeight = pickupWeight;
    }

    public BigDecimal getPickupWeight() 
    {
        return pickupWeight;
    }
    public void setPickupFreightTotal(BigDecimal pickupFreightTotal) 
    {
        this.pickupFreightTotal = pickupFreightTotal;
    }

    public BigDecimal getPickupFreightTotal() 
    {
        return pickupFreightTotal;
    }
    public void setPickupStartTime(Date pickupStartTime) 
    {
        this.pickupStartTime = pickupStartTime;
    }

    public Date getPickupStartTime() 
    {
        return pickupStartTime;
    }
    public void setPickupCompleteTime(Date pickupCompleteTime) 
    {
        this.pickupCompleteTime = pickupCompleteTime;
    }

    public Date getPickupCompleteTime() 
    {
        return pickupCompleteTime;
    }
    public void setPlannedDepartureTime(Date plannedDepartureTime) 
    {
        this.plannedDepartureTime = plannedDepartureTime;
    }

    public Date getPlannedDepartureTime() 
    {
        return plannedDepartureTime;
    }
    public void setActualDepartureTime(Date actualDepartureTime) 
    {
        this.actualDepartureTime = actualDepartureTime;
    }

    public Date getActualDepartureTime() 
    {
        return actualDepartureTime;
    }
    public void setPlannedArrivalTime(Date plannedArrivalTime) 
    {
        this.plannedArrivalTime = plannedArrivalTime;
    }

    public Date getPlannedArrivalTime() 
    {
        return plannedArrivalTime;
    }
    public void setActualArrivalTime(Date actualArrivalTime) 
    {
        this.actualArrivalTime = actualArrivalTime;
    }

    public Date getActualArrivalTime() 
    {
        return actualArrivalTime;
    }
    public void setCreatedBy(String createdBy) 
    {
        this.createdBy = createdBy;
    }

    public String getCreatedBy() 
    {
        return createdBy;
    }
    public void setCreatedTime(Date createdTime) 
    {
        this.createdTime = createdTime;
    }

    public Date getCreatedTime() 
    {
        return createdTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("pickupOrderNumber", getPickupOrderNumber())
            .append("waybillNumber", getWaybillNumber())
            .append("orderNumber", getOrderNumber())
            .append("customer", getCustomer())
            .append("departure", getDeparture())
            .append("destination", getDestination())
            .append("pickupStatus", getPickupStatus())
            .append("shippingAddress", getShippingAddress())
            .append("receivingAddress", getReceivingAddress())
            .append("driver", getDriver())
            .append("licensePlate", getLicensePlate())
            .append("phoneNumber", getPhoneNumber())
            .append("pickupQuantity", getPickupQuantity())
            .append("pickupVolume", getPickupVolume())
            .append("pickupWeight", getPickupWeight())
            .append("pickupFreightTotal", getPickupFreightTotal())
            .append("pickupStartTime", getPickupStartTime())
            .append("pickupCompleteTime", getPickupCompleteTime())
            .append("plannedDepartureTime", getPlannedDepartureTime())
            .append("actualDepartureTime", getActualDepartureTime())
            .append("plannedArrivalTime", getPlannedArrivalTime())
            .append("actualArrivalTime", getActualArrivalTime())
            .append("createdBy", getCreatedBy())
            .append("createdTime", getCreatedTime())
            .toString();
    }
}
